home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / DEF / Define / Midi / def-program < prev    next >
Lisp/Scheme  |  1998-10-23  |  3KB  |  72 lines

  1. def-program sound-set def-description &rest def-descriptions
  2.  
  3. Defines MIDI program change events for an instrument corresponding to a predefined sound-set. The default gives the same value for all instruments and for those that are not defined. If no def-program is defined then no program change data is generated. Both program names or numbers can be used.
  4.  
  5. (def-program gm-sound-set
  6.    default lead-1-square
  7.    piano clavi          ; send once at the beginning of a track
  8.    sax ((alto-sax)      ; two first zones have its own values
  9.         (soprano-sax)  ; third zone has programs for each
  10.         (alto-sax tenor-sax)) ; individual notes. 
  11.                                ; If more zones, this
  12.                                ; whole patter is repeated.
  13.    bass ((1 2 3) (2 3))  ; each zone has programs for each 
  14.                          ; notes, pattern is repeated
  15. )
  16.  
  17. The program numbers can be any integer values between 1..128. The sound set is defined with def-sound-set. Using sound sets you'll be able to access instruments by name, rather than numbers, and port instrumentations to different synthesizers.
  18.  
  19. Program that is used for the instrument.
  20.  
  21. (def-program nil
  22.    bass 1
  23. )
  24.  
  25. (def-program mu80-sounds
  26.    bass acidbass
  27. )
  28.  
  29. (def-program mu80-sounds
  30.    bass (acidbass acobass)
  31. )
  32.  
  33. Each note of the instrument has different program values, repeated cyclically.
  34.  
  35. (def-program nil
  36.    bass (1 2 3)
  37. )
  38.  
  39. Each zone has different program value. If there are less program zones than there are actual zones then the whole pattern is repeated.
  40.  
  41. (def-program nil
  42.    bass ((1) (3))
  43. )
  44.  
  45. (def-program mu80-sounds
  46.    bass ((acidbass) (elgrpno1))
  47. )
  48.  
  49. Each zone of the instrument has programs for each note, repeated cyclically. If there are less program zones than there are actual zones the whole pattern is repeated.
  50.  
  51. (def-program nil
  52.    bass ((1 2) (3 4))
  53. )
  54.  
  55. (def-program mu80-sounds
  56.    bass ((acidbass acobass) (elgrpno1 elgrpno2))
  57. )
  58.  
  59. Evaluated Values
  60.  
  61. (setq vn-programs '((46) (46) (46) (46) (46) (46) (46) (46) (46) (41) (41) (41)
  62.  (46) (46) (41) (46) (46) (46) (41) (41) (41) (46) (41) (46) (46) (46)
  63.  (46) (46) (46) (46) (46) (46) (41) (41) (41) (41) (46) (46) (46) (41)
  64.  (46) (46) (41) (41) (41) (46) (46) (46) (46) (46)))
  65.  
  66. (def-program nil
  67.   violin (absolutes vn-programs)
  68. )
  69.  
  70. (program-of violin)
  71. --> ((46) (46) (46) (46) (46) (46) (46) (46) (46) (41) (41) (41) (46) (46) (41) (46) (46) (46) (41) (41) (41) (46) (41) (46) (46) (46) (46) (46) (46) (46) (46) (46) (41) (41) (41) (41) (46) (46) (46) (41) (46) (46) (41) (41) (41) (46) (46) (46) (46) (46))
  72.